Method and apparatus for performing joint detection with a common midamble

ABSTRACT

Techniques for performing joint detection with a common midamble for downlink transmission are described. In one design, a user equipment (UE) may obtain samples for a burst transmitted by a Node B on the downlink. The burst may include at least one data field and a common midamble. The UE may derive a channel impulse response estimate for each of multiple orthogonal codes based on (i) a channel impulse response estimate derived based on samples for the common midamble and (ii) a traffic-to-pilot ratio (T2P) estimated for that orthogonal code based on the samples for burst. The UE may perform joint detection, for the multiple orthogonal codes, on samples for the at least one data field based on the multiple channel impulse response estimates.

BACKGROUND I. Field

The present disclosure relates generally to communication, and morespecifically to techniques for receiving a transmission in a wirelesscommunication system.

II. Background

Wireless communication systems are widely deployed to provide variouscommunication services such as voice, video, packet data, messaging,broadcast, etc. These systems may be multiple-access systems capable ofsupporting multiple users by sharing the available system resources.Examples of such multiple-access systems include Code Division MultipleAccess (CDMA) systems, Time Division Multiple Access (TDMA) systems,Frequency Division Multiple Access (FDMA) systems, Orthogonal FDMA(OFDMA) systems, and Single-Carrier FDMA (SC-FDMA) systems.

In a wireless communication system, a Node B may transmit traffic dataand a common midamble on the downlink to multiple user equipments (UEs).A midamble comprises known data and may also be referred to as atraining sequence, pilot, reference, etc. A common midamble is amidamble that is sent to a group of UEs instead of a specific UE. Agiven UE may use the common midamble for channel estimation and/or otherpurposes. It may be desirable for each UE to recover the traffic datasent to that UE using the common midamble.

SUMMARY

Techniques for performing joint detection with a common midamble fordownlink transmission are described herein. Joint detection refers todetection of traffic data for multiple orthogonal codes jointly insteadof for each orthogonal code individually, which may improve performance.Joint detection may also be referred to as multi-user detection (MUD).

In one design, a UE may obtain samples for a burst transmitted by a NodeB on the downlink. The burst may comprise at least one data field and acommon midamble. The UE may derive multiple channel estimates formultiple orthogonal codes based on samples for the common midamble andsamples for the at least one data field. The UE may then perform jointdetection, for the multiple orthogonal codes, on the samples for the atleast one data field based on the multiple channel estimates.

In one design of channel estimation, the UE may derive a first channelimpulse response estimate based on the samples for the common midamble.The UE may estimate a traffic-to-pilot ratio (T2P) for each of themultiple orthogonal codes based on the samples for the at least one datafield and the samples for the common midamble. The UE may then derive achannel impulse response estimate for each orthogonal code based on thefirst channel impulse response estimate and the T2P for that orthogonalcode.

In one design of joint detection, the UE may determine an overallchannel matrix based on the multiple channel estimates for the multipleorthogonal codes. The UE may determine a detection matrix based on theoverall channel matrix. The UE may then apply the detection matrix tothe samples for each data field to obtain data symbol estimates for atleast one orthogonal code of interest for that data field. The UE mayalso perform joint detection for multiple orthogonal codes and multiplereceive antennas, for multiple orthogonal codes and multiple cells, etc.

Various aspects and features of the disclosure are described in furtherdetail below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a wireless communication system.

FIG. 2 shows an example burst for the downlink in TD-CDMA.

FIG. 3 shows a block diagram of a Node B and a UE.

FIG. 4 shows a block diagram of a CDMA modulator for one cell.

FIG. 5 shows a block diagram of a joint detector at the UE.

FIG. 6 shows a process for receiving data on the downlink.

FIG. 7 shows a process for performing channel estimation.

FIG. 8 shows a process for performing joint detection.

FIG. 9 shows an apparatus for receiving data on the downlink.

DETAILED DESCRIPTION

The techniques described herein may be used for various wirelesscommunication systems such as CDMA, TDMA, FDMA, OFDMA and SC-FDMAsystems. The terms “system” and “network” are often usedinterchangeably. A CDMA system may implement a radio technology such asUniversal Terrestrial Radio Access (UTRA) Time Division Duplex (TDD),UTRA Frequency Division Duplex (FDD), cdma2000, etc. UTRA TDD includes1.28, 3.84 and 7.68 megachips/second (Mcps) Options. UTRA TDD 3.84 and7.68 Mcps Options are also referred to as Time Division CDMA (TD-CDMA)or High Chip Rate (HCR). UTRA TDD 1.28 Mcps Option is also referred toas Time Division Synchronous CDMA (TD-SCDMA) or Low Chip Rate (LCR).UTRA FDD includes Wideband CDMA (WCDMA) and other variants of CDMA. UTRATDD and UTRA FDD are part of Universal Mobile Telecommunication System(UMTS). cdma2000 covers IS-2000, IS-856, and IS-95 standards. An OFDMAsystem may implement a radio technology such as Evolved UTRA (E-UTRA),Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX),IEEE 802.20, Flash-OFDM®, etc. Long Term Evolution (LTE) is an upcomingrelease of UMTS that uses E-UTRA, which employs OFDMA on the downlinkand SC-FDMA on the uplink. UTRA, E-UTRA and LTE are described indocuments from an organization named “3rd Generation PartnershipProject” (3GPP). cdma2000 and UMB are described in documents from anorganization named “3rd Generation Partnership Project 2” (3GPP2).

The techniques described herein may be used for the systems and radiotechnologies mentioned above as well as other systems and radiotechnologies. The techniques may also be used for data transmission onthe downlink as well as the uplink. For clarity, certain aspects of thetechniques are described below for data transmission on the downlinkwith TD-CDMA 3.84 Mcps Option. TD-CDMA is described in 3GPP TS 25.221,entitled “Physical channels and mapping of transport channels ontophysical channels (TDD),” which is publicly available.

FIG. 1 shows a wireless communication system 100, which may be aUniversal Terrestrial Radio Access Network (UTRAN) implementing TD-CDMA.System 100 may include a number of Node Bs 110 and other networkentities. A Node B may be a station that communicates with the UEs andmay also be referred to as an evolved Node B (eNode B), a base station,an access point, etc. Each Node B 110 may provide communication coveragefor a particular geographic area. The overall coverage area of a Node Bmay be partitioned into multiple (e.g., three) smaller areas. Eachsmaller area may be served by a respective Node B subsystem. In 3GPP,the term “cell” can refer to the smallest coverage area of a Node Band/or a Node B subsystem serving this coverage area. In 3GPP2, the term“sector” can refer to the smallest coverage area of a base stationand/or a base station subsystem serving this coverage area. For clarity,3GPP concept of cell is used in the description below. A systemcontroller 130 may couple to Node Bs 110 and provide coordination andcontrol for these Node Bs. System controller 130 may be a single networkentity or a collection of network entities.

UEs 120 may be dispersed throughout the system, and each UE may bestationary or mobile. A UE may also be referred to as a mobile station,a terminal, an access terminal, a subscriber unit, a station, etc. A UEmay be a cellular phone, a personal digital assistant (PDA), a wirelessdevice, a handheld device, a wireless modem, a laptop computer, etc. AUE may communicate with a Node B on the downlink and/or uplink. Thedownlink (or forward link) refers to the communication link from theNode B to the UE, and the uplink (or reverse link) refers to thecommunication link from the UE to the Node B. For clarity, FIG. 1 showsonly transmissions on the downlink. In FIG. 1, a solid line with asingle arrow indicates a data transmission to a specific UE. A dashedline with a single arrow indicates an interfering transmission at a UE.For simplicity, FIG. 1 shows only some of the interfering transmissions.In the description below, the terms “UE” and “user” are usedinterchangeably.

In TD-CDMA, the timeline for transmission is divided into units of radioframes. Each radio frame has a duration of 10 milliseconds (ms) and isfurther partitioned into 15 slots. Each slot includes 2560 chips and hasa duration of 0.667 ms for the 3.84 Mcps Option. Each slot may beallocated to either the downlink or uplink. The transmission in eachslot is referred to as a burst.

FIG. 2 shows an example burst 200 for the downlink in TD-CDMA. Burst 200includes a left data field 210, a midamble field 220, a right data field230, and a guard period (GP) field 240. Four burst types 1 through 4 aredefined in TD-CDMA, and each burst type specifies the lengths of thefour fields in a burst. For burst type 1, left data field 210 has alength of 976 chips, midamble field 220 has a length of 512 chips, rightdata field 230 has a length of 976 chips, and guard period field 240 hasa length of 96 chips. Data fields 210 and 230 may also be referred to asleft and right data portions, respectively.

Traffic data for U users may be sent in data fields 210 and 230 using Korthogonal variable spreading factor (OVSF) codes, where K≦1 and 1≧U≦K.The OVSF codes may also be referred to as orthogonal codes, spreadingcodes, code channels, traffic channels, etc. Each user may be assignedone or more OVSF codes for data transmission. The traffic data for eachuser may be scaled based on the transmit power to use for that user andfurther spread with the OVSF code(s) assigned to that user. Differenttransmit power levels may be used for different users. These users maybe at different locations and may thus require different power levels toachieve satisfactory performance.

A common midamble may be sent in midamble field 220. The common midamblemay comprise data that is known to all users and may be used for channelestimation and other purposes. No transmission is sent in guard periodfield 240.

FIG. 3 shows a block diagram of a design of a Node B 110 and a UE 120,which may be one of the Node Bs and one of the UEs in FIG. 1. FIG. 3shows Node B 110 equipped with one transmit antenna and UE 120 equippedwith R receive antennas, where R≧1. In general, Node B 110 and UE 120may each be equipped with any number of antennas. For simplicity, FIG. 3shows only processing units for data transmission on the downlink.

At Node B 110, a transmit (TX) data processor 310 may receive trafficdata for the UEs being served, process (e.g., encode, interleave, andsymbol map) the traffic data for each UE, and provide data symbols forall UEs to a CDMA modulator 320. A data symbol is a modulation symbolfor data, a modulation symbol is a complex value for a point in a signalconstellation (e.g., for M-PSK or M-QAM), and a symbol may be a real orcomplex value. CDMA modulator 320 may process (e.g., spread andscramble) the data symbols for the UEs, generate and multiplex a commonmidamble, and provide data and midamble chips. A transmitter (TMTR) 330may process (e.g., convert to analog, amplify, filter, and frequencyupconvert) the data and midamble chips and generate a downlink signal,which may be transmitted via an antenna 332.

At UE 120, R antennas 352 a through 352 r may receive the downlinksignals from Node B 110 and possibly other Node Bs and may provide Rreceived signals to R receivers (RCVR) 354 a through 354 r,respectively. Each receiver 354 may process (e.g., filter, amplify,frequency downconvert, and digitize) its received signal and providereceived samples to a joint detector 360. Detector 360 may perform jointdetection on the received samples from all R receive antennas for allOVSF codes of interest and provide data symbol estimates, which areestimates of the data symbols for UE 120. A receive (RX) data processor370 may process (e.g., symbol demap, deinterleave, and decode) the datasymbol estimates and provide decoded data for UE 120. In general, theprocessing by joint detector 360 and RX data processor 370 iscomplementary to the processing by CDMA modulator 320 and TX dataprocessor 310, respectively, at Node B 110.

Controllers/processors 340 and 380 may direct operation at Node B 110and UE 120, respectively. Memories 342 and 382 may store data andprogram codes for Node B 110 and UE 120, respectively.

FIG. 4 shows a block diagram of a design of CDMA modulator 320 for onecell at Node B 110 in FIG. 3. For simplicity, the following descriptionassumes that K OVSF codes with the same spreading factor of Q are usedfor a burst, where Q may be equal to 1, 2, 4, 8, 16, or some othervalue, and 1≦K≦Q. In general, OVSF codes of the same or differentlengths may be used for transmission. Q may then correspond to thelength of the longest OVSF code.

Within CDMA modulator 320, a demultiplexer (Demux) 410 may receive datasymbols for U users from TX data processor 310 and may provide the datasymbols to K OVSF code processors 420 a through 420 k for K OVSF codes.Each user may be assigned one or more OVSF codes. Demultiplexer 410 mayprovide the data symbols for each user to one or more OVSF codeprocessors 420 for the one or more OVSF codes assigned to that user.

Within each OVSF code processor 420, a multiplier 422 may scale its datasymbols with a gain determined based on the transmit power to use forthe associated OVSF code. A spreader 424 may spread the scaled datasymbols from multiplier 422 with an OVSF code assigned to that spreaderand provide spread chips. The spreading may be performed by repeatingeach scaled data symbol to generate Q replicated symbols and multiplyingthe Q replicated symbols with the Q chips of the OVSF code to generate Qspread chips for that data symbol. A combiner 426 may receive and sumthe spread chips from all K spreaders 424 a through 424 k for the K OVSFcodes. A multiplier 428 may multiply the combined chips from combiner426 with a scrambling code for the cell and provide data chips for thedata fields.

The processing by CDMA modulator 320 for each OVSF code may be expressedas:

x _(n,q) ^(k) =d _(n) ^(k) ·g _(k) ·c ₁ ^(k) ·s _(q), for k=1, . . . ,K, q=1, . . . , Q, and n=1, . . . , N,   Eq (1)

where s_(q) is the q-th chip of the scrambling code,

-   c_(q) ^(k) is the q-th chip of the k-th OVSF code,-   g_(k) is a gain for the k-th OVSF code,-   d_(n) ^(k) is a data symbol sent in symbol period n with the k-th    OVSF code, and-   x_(n,q) ^(k) is a data chip sent in chip period q of symbol period n    for the k-th OVSF code.

N data symbols may be sent with one OVSF code in each data field, whereN is dependent on the length of the data field and the spreading factorQ.

The spreading and scrambling for each OVSF code may be expressed as:

a _(q) ^(k) =c _(q) ^(k) ·s _(q),   Eq (2)

where a_(q) ^(k) is a scrambling and spreading chip for the k-th OVSFcode.

A generator 430 may generate chips for a common midamble for the cell. Amultiplier 432 may scale the chips from generator 430 with a gain g_(m)determined based on the transmit power for the common midamble. Amultiplexer (Mux) 440 may receive the data chips from multiplier 428 andthe midamble chips from multiplier 432, provide the data chips duringtime intervals for the data fields, and provide the midamble chipsduring the time interval for the midamble field. The data chips andmidamble chips may be further processed and transmitted to the recipientUEs.

Referring back to FIG. 3, UE 120 may receive the downlink transmissionfrom Node B 110 via R receive antennas. The impulse response of thewireless channel from transmit antenna 332 at Node B to each receiveantenna 352 at UE 120 may be expressed as:

h _(r) =[h _(1,r) h _(2,r) . . . h _(L,r)]^(T), for r=1, . . . , R,   Eq(3)

where h_(r) is an L×1 vector of the channel impulse response for receiveantenna r,

-   h_(Λ,r) is the Λ-th channel tap in the channel impulse response,    with Λ=1, . . . , L,-   L is the length of the channel impulse response, and-   “^(T)” denotes a transpose.

For clarity, in the description herein, vectors are denoted with boldedlower case text (e.g., h), matrices are denoted with bolded upper casetext (e.g., H), scalars are denoted with italic lower case text (e.g.,h), and constants are denoted with upper case text (e.g., L).

UE 120 may estimate the channel impulse response for each receiveantenna based on the common midamble sent by Node B 110. The commonmidamble may be expressed as:

m=[m ₁ m ₂ . . . m _(P) _(m) ]^(T),   Eq (4)

where m is a P_(m)×1 vector of the common midamble,

-   m_(i) is the i-th chip of the common midamble, with i=1, . . . ,    P_(m), and-   P_(m) is the length of the common midamble.

P_(m) is determined by the duration of the midamble field and may bedifferent for different burst types. The first P chips of the commonmidamble are defined based on a cell-specific midamble code. The P_(m)−Premaining chips of the common midamble are copies of the beginningchips, as follows:

m _(i) =m _(i−P), for i=P+1, . . . , P _(m).   Eq (5)

In one design, for burst type 1, the parameter values may be as follows:

P=456, P _(m)=512, K=8, L=57, T=456, and P=P _(m) −L+1.   Eq (6)

In the above design, the last 56 chips of the common midamble are copiesof the first 56 chips of the midamble. This common midamble can supporteight OVSF codes with a channel impulse response length of 57, for atotal of 456 channel taps. In general, for a given value of P, theproduct of K and L should be equal to or less than P.

UE 120 may obtain a set of received samples at the chip rate from eachreceive antenna for a burst transmitted by Node B 110. For each receiveantenna, the first L−1 received samples for the common midamble may beaffected by intersymbol interference (ISI) from the last L−1 chips inleft data field 210. Thus, the first L−1 received samples for the commonmidamble may be discarded, and the remaining P received samples may beused for channel estimation. The P received samples from one receiveantenna r for the common midamble may be expressed as:

z _(r) =G h _(r) +n _(r), for r=1, . . . , R,   Eq (7)

where z_(r)=[z_(1,r) z_(2,r) . . . z_(P,r)]^(T) is a P×1 vector ofreceived samples from antenna r for the common midamble,

-   G is a P×L common midamble matrix, and-   n_(r)=[n_(1,r) n_(2,r) . . . n_(P,r)]^(T) is a P×1 vector of    interference and noise for antenna r.

For burst type 1, P×L may be equal to 456×57, and the common midamblematrix G may be expressed as:

$\begin{matrix}{G = {\begin{bmatrix}m_{57} & m_{56} & \ldots & m_{1} \\m_{58} & m_{57} & \ldots & m_{2} \\\vdots & \vdots & ⋰ & \vdots \\m_{512} & m_{511} & \ldots & m_{456}\end{bmatrix}.}} & {{Eq}\mspace{14mu} (8)}\end{matrix}$

In general, the element in the i-th row and j-th column of matrix G maybe given as g_(ij)=m_(L+i−j), for i=1, . . . , P and j=1, . . . , L.

The channel impulse response for each receive antenna may be estimatedin various manners. In one design, the channel impulse response may beestimated based on a maximum likelihood channel estimator. For thisdesign, a channel estimation matrix may be derived as follows:

C _(r) =[G ^(H) R _(n,r) ⁻¹ G] ⁻¹ G ^(H) R _(n,r) ⁻¹,   Eq (9)

where C_(r) is an L×P maximum likelihood channel estimation matrix forreceive antenna r,

-   R_(n,r) is a P×P noise covariance matrix for receive antenna r, and-   “^(H)” denotes a conjugate transpose or Hermitian.

The noise covariance matrix R_(n,r) may be expressed as:

R _(n,r) =E{n _(r) n _(r) ^(H)},   Eq (10)

where E{ } denotes an expectation.

The interference and noise at each receive antenna may be assumed to beadditive white Gaussian noise (AWGN) with zero mean and a variance ofσ². In this case, the noise covariance matrix may be given asR_(n,r)=σ²·I, where I is an identity matrix with ones along the diagonaland zeros elsewhere. An L×P channel estimation matrix C_(a) may then beexpressed as:

C _(a) =[G ^(H) G] ⁻¹ G ^(H).   Eq (11)

The channel estimation matrix C_(a) may also be referred to as apseudo-inverse of G.

In another design, an L×P channel estimation matrix C_(b) may be definedbased on a discrete Fourier transform (DFT) matrix, as follows:

$\begin{matrix}{{C_{b} = {G^{- 1} = {\frac{1}{\sqrt{P}} \cdot \left\lbrack {W^{H}\Lambda \; W} \right\rbrack}}},} & {{Eq}\mspace{14mu} (12)}\end{matrix}$

where W is a P×P DFT matrix and A is a P×P diagonal matrix.

The element w_(uv) in the u-th row and v-th column of the DFT matrix Wmay be expressed as:

$\begin{matrix}{{w_{uv} = {\frac{1}{\sqrt{P}} \cdot ^{{- j}\; 2\; {\pi {({u - 1})}}{{({v - 1})}/P}}}},{{for}\mspace{14mu} u},{v = 1},\ldots \mspace{11mu},{P.}} & {{Eq}\mspace{14mu} (13)}\end{matrix}$

The diagonal matrix Λ contains non-zero values along the diagonal andzeros elsewhere. The diagonal element λ_(v) in the v-th row and v-thcolumn of matrix Λ may be expressed as:

$\begin{matrix}{{\lambda_{v} = \frac{1}{\left( {Wg}_{1} \right)_{v}}},{{{for}\mspace{14mu} v} = 1},\ldots \mspace{14mu},P,} & {{Eq}\mspace{14mu} (14)}\end{matrix}$

where g₁ is a P×1 vector formed by the first column of matrix G, and

(W g₁)_(v) denotes the v-th element in a P×1 vector W g₁.

The channel estimation matrix may also be derived in other manners. Inany case, the channel impulse response for each receive antenna may beestimated as follows:

ĥ_(r)=C z_(r),   Eq (15)

where C is an L×P channel estimation matrix, which may be equal toC_(r), C_(a) or C_(b), and

-   ĥ_(r) is an L×1 vector of channel impulse response estimate for    receive antenna r.

Vector ĥ_(r) is an estimate of vector h_(r) for receive antenna r. Asshown in equation (15), the channel impulse response may be estimatedfor each receive antenna based on the received samples from that antennafor the common midamble. The channel impulse response for each receiveantenna may also be estimated based on some other channel estimationtechniques.

In one design, K channel impulse responses for the K OVSF codes for eachreceive antenna may be estimated as follows:

ĥ _(r) ^(k) =ĥ _(r) ·T2P _(r) ^(k), for k=1, . . . , K,   Eq (16)

where ĥ_(r) ^(k) is an L×1 vector of channel impulse response estimatefor the k-th OVSF code for receive antenna r, and

-   T2P_(r) ^(k) is a traffic-to-pilot ratio (T2P) of the k-th OVSF code    for receive antenna r.

As shown in equation (16), for each receive antenna, the K OVSF codesobserve the same channel impulse response h_(r) from transmit antenna332 at Node B 110 to that receive antenna at UE 120. However, thechannel impulse response for each OVSF code is scaled by the T2P forthat OVSF code. The T2Ps for all K OVSF codes may be estimated by UE 120based on the received samples for the data fields and the receivedsamples for the common midamble.

Each data field may carry N data symbols in N symbol periods for eachOVSF code of length Q used for transmission. UE 120 may descramble thereceived samples with the scrambling code used by Node B 110 to obtaindescrambled samples. UE 120 may then perform a Q-point fast Hadamardtransform (FHT) for each symbol period to obtain Q despread symbols forthat symbol period. These Q despread symbols are estimates of datasymbols sent with Q possible OVSF codes in the symbol period. UE 120 mayestimate the energy-per-symbol for each OVSF code, as follows:

$\begin{matrix}{{E_{r}^{k} = {\frac{1}{2\; N} \cdot {\sum\limits_{n}{{\overset{\sim}{d}}_{n,r}^{k}}^{2}}}},{{{for}\mspace{14mu} k} = 1},\ldots \mspace{11mu},Q,} & {{Eq}\mspace{14mu} (17)}\end{matrix}$

where {tilde over (d)}_(n,r) ^(k) is a despread symbol for the k-th OVSFcode in symbol period n for receive antenna r.

UE 120 may estimate the energy-per-chip E_(mid) of the common midamble,as follows:

$\begin{matrix}{E_{{mid},r} = {\frac{1}{P} \cdot {\sum\limits_{i}{{z_{i,r}}^{2}.}}}} & {{Eq}\mspace{14mu} (18)}\end{matrix}$

UE 120 may then compute the T2P for each OVSF code, as follows:

$\begin{matrix}{{T\; 2\; P_{r}^{k}} = {\sqrt{\frac{E_{{mid},r}}{E_{r}^{k}/Q}} \cdot}} & {{Eq}\mspace{14mu} (19)}\end{matrix}$

The received samples for one data field may be expressed as:

y=T d+n,   Eq (20)

where d is a K·N×1 vector of all data symbols sent with K OVSF codes inthe data field,

-   T is an R·(N·Q+L−1)×K·N overall channel matrix for the K OVSF codes,-   y is an R·(N·Q+L−1)×1 vector of all received samples for the data    field, and-   n is an R·(N·Q+L−1)×1 vector of interference and noise.

The data vector d may be expressed as:

$\begin{matrix}{{{d = {\left\lbrack {\underset{\underset{\underset{1\; {st}\mspace{14mu} {symbol}\mspace{14mu} {period}}{K\mspace{14mu} {data}\mspace{14mu} {symbols}\mspace{14mu} {for}}}{}}{d_{1}^{1}\mspace{14mu} \ldots \mspace{14mu} d_{1}^{K}}\mspace{31mu} \underset{\underset{2\; {nd}\mspace{14mu} {symbol}\mspace{14mu} {period}}{K\mspace{14mu} {data}\mspace{14mu} {symbols}\mspace{14mu} {for}}}{\underset{}{d_{2}^{1}\mspace{14mu} \ldots \mspace{14mu} d_{2}^{K}}\mspace{11mu}}\mspace{20mu} \ldots \mspace{20mu} \underset{\underset{{last}\mspace{14mu} {symbol}\mspace{14mu} {period}}{K\mspace{14mu} {data}\mspace{14mu} {symbols}\mspace{14mu} {for}}}{\underset{}{d_{N}^{1}\mspace{14mu} \ldots \mspace{14mu} d_{N}^{K}}}} \right\rbrack \;}^{T}},}\mspace{11mu}} & {{Eq}\mspace{14mu} (21)}\end{matrix}$

where d_(n) ^(k) is a data symbol sent in symbol period n with the k-thOVSF code.

The received vector y may be expressed as:

$\begin{matrix}{{y = \mspace{14mu} \begin{bmatrix}{\underset{\underset{{received}\mspace{14mu} {samples}\mspace{14mu} {for}\mspace{14mu} 1\; {st}\mspace{14mu} {symbol}\mspace{14mu} {period}}{}}{\overset{\overset{\overset{{samples}\mspace{14mu} {from}\mspace{14mu} R\mspace{14mu} {antennas}}{{for}\mspace{14mu} 1\; {st}\mspace{14mu} {chip}\mspace{14mu} {period}}}{}}{y_{1,1}^{1}\mspace{14mu} \ldots \mspace{14mu} y_{1,1}^{R}}\mspace{14mu} \ldots \mspace{14mu} \overset{\overset{\overset{{samples}\mspace{14mu} {from}\mspace{14mu} R\mspace{14mu} {antennas}}{{for}\mspace{14mu} {last}\mspace{14mu} {chip}\mspace{14mu} {period}}}{}}{y_{1,Q}^{1}\mspace{14mu} \ldots \mspace{14mu} y_{1,Q}^{R}}}\mspace{14mu} \ldots} \\{\underset{\underset{{received}\mspace{14mu} {samples}\mspace{14mu} {for}\mspace{14mu} 1\; {st}\mspace{14mu} {symbol}\mspace{14mu} {period}}{}}{\overset{\overset{\overset{{samples}\mspace{14mu} {from}\mspace{14mu} R\mspace{14mu} {antennas}}{{for}\mspace{14mu} 1\; {st}\mspace{14mu} {chip}\mspace{14mu} {period}}}{}}{y_{N,1}^{1}\mspace{14mu} \ldots \mspace{14mu} y_{N,1}^{R}}\mspace{14mu} \ldots \mspace{14mu} \overset{\overset{\overset{{samples}\mspace{14mu} {from}\mspace{14mu} R\mspace{14mu} {antennas}}{{for}\mspace{14mu} {last}\mspace{14mu} {chip}\mspace{14mu} {period}}}{}}{y_{N,Q}^{1}\mspace{14mu} \ldots \mspace{14mu} y_{N,Q}^{R}}}\mspace{14mu}}\end{bmatrix}^{T}},} & {{Eq}\mspace{14mu} (22)}\end{matrix}$

where y_(n,q) ^(r) is a received sample from antenna r in chip period qof symbol period n.

The overall channel matrix T is a function of the K OVSF codes, thescrambling code, and the K channel impulse responses for the K OVSFcodes for each receive antenna. The structure of matrix T is illustratedbelow for a simple example with the following parameter values:

N=2, Q=4, R=2, K=2, L=1.   Eq (23)

R·(N·Q+L−1)=2(2·4+1−1)=16 rows for matrix T.

K·N=2·2=4 columns for matrix T.

The elements of matrix T may be defined based on the following:

-   h_(Λ,r) ^(k) is the Λ-th channel tap for the k-th OVSF code for    receive antenna r, and-   a_(q) ^(k) is the q-th scrambling and spreading chip for the k-th    OVSF code.    The scrambling and spreading chips a_(q) ^(k) may be obtained as    shown in equation (2).

For the example above, there are four channel taps h_(1,1) ¹, h_(1,2) ¹,h_(1,1) ² and h_(1,2) ² for the four channel impulse responses for twoOVSF codes and two receive antennas. Equation (20) may then be expressedas:

$\begin{matrix}{y_{16 \times 1} = {{\begin{bmatrix}{h_{1,1}^{1} \cdot a_{1}^{1}} & {h_{1,1}^{2} \cdot a_{1}^{2}} & 0 & 0 \\{h_{1,2}^{1} \cdot a_{1}^{1}} & {h_{1,2}^{2} \cdot a_{1}^{2}} & 0 & 0 \\{h_{1,1}^{1} \cdot a_{2}^{1}} & {h_{1,1}^{2} \cdot a_{2}^{2}} & 0 & 0 \\{h_{1,2}^{1} \cdot a_{2}^{1}} & {h_{1,2}^{2} \cdot a_{2}^{2}} & 0 & 0 \\{h_{1,1}^{1} \cdot a_{3}^{1}} & {h_{1,1}^{2} \cdot a_{3}^{2}} & 0 & 0 \\{h_{1,2}^{1} \cdot a_{3}^{1}} & {h_{1,2}^{2} \cdot a_{3}^{2}} & 0 & 0 \\{h_{1,1}^{1} \cdot a_{4}^{1}} & {h_{1,1}^{2} \cdot a_{4}^{2}} & 0 & 0 \\{h_{1,2}^{1} \cdot a_{4}^{1}} & {h_{1,2}^{2} \cdot a_{4}^{2}} & 0 & 0 \\0 & 0 & {h_{1,1}^{1} \cdot a_{1}^{1}} & {h_{1,1}^{2} \cdot a_{1}^{2}} \\0 & 0 & {h_{1,2}^{1} \cdot a_{1}^{1}} & {h_{1,2}^{2} \cdot a_{1}^{2}} \\0 & 0 & {h_{1,1}^{1} \cdot a_{2}^{1}} & {h_{1,1}^{2} \cdot a_{2}^{2}} \\0 & 0 & {h_{1,2}^{1} \cdot a_{2}^{1}} & {h_{1,2}^{2} \cdot 2_{2}^{2}} \\0 & 0 & {h_{1,1}^{1} \cdot a_{3}^{1}} & {h_{1,1}^{2} \cdot a_{3}^{2}} \\0 & 0 & {h_{1,2}^{1} \cdot a_{3}^{1}} & {h_{1,2}^{2} \cdot a_{3}^{2}} \\0 & 0 & {h_{1,1}^{1} \cdot a_{4}^{1}} & {h_{1,1}^{2} \cdot a_{4}^{2}} \\0 & 0 & {h_{1,2}^{1} \cdot a_{4}^{1}} & {h_{1,2}^{2} \cdot a_{4}^{2}}\end{bmatrix}\begin{bmatrix}d_{1}^{1} \\d_{1}^{2} \\d_{2}^{1} \\d_{2}^{2}\end{bmatrix}} + n_{16 \times 1}}} & {{Eq}\mspace{14mu} (24)}\end{matrix}$

In the simple example given above, where is one channel tap for eachchannel impulse response. If L=2, then equation (24) may be expressedas:

$y =_{18 \times 1}{= {{\begin{bmatrix}{h_{1,1}^{1} \cdot a_{1}^{1}} & {h_{1,1}^{2} \cdot a_{1}^{2}} & 0 & 0 \\{h_{1,2}^{1} \cdot a_{1}^{1}} & {h_{1,2}^{2} \cdot a_{1}^{2}} & 0 & 0 \\{{h_{1,1}^{1} \cdot a_{2}^{1}} + {h_{2,1}^{1} \cdot a_{1}^{1}}} & {{h_{1,1}^{2} \cdot a_{2}^{2}} + {h_{2,1}^{2} \cdot a_{1}^{2}}} & 0 & 0 \\{{h_{1,2}^{1} \cdot a_{2}^{1}} + {h_{2,2}^{1} \cdot a_{1}^{1}}} & {{h_{1,2}^{2} \cdot a_{2}^{2}} + {h_{2,2}^{2} \cdot a_{1}^{2}}} & 0 & 0 \\{{h_{1,1}^{1} \cdot a_{3}^{1}} + {h_{2,1}^{1} \cdot a_{2}^{1}}} & {{h_{1,1}^{2} \cdot a_{3}^{2}} + {h_{2,1}^{2} \cdot a_{2}^{2}}} & 0 & 0 \\{{h_{1,2}^{1} \cdot a_{3}^{1}} + {h_{2,2}^{1} \cdot a_{2}^{1}}} & {{h_{1,2}^{2} \cdot a_{3}^{2}} + {h_{2,2}^{2} \cdot a_{2}^{2}}} & 0 & 0 \\{{h_{1,1}^{1} \cdot a_{4}^{1}} + {h_{2,1}^{1} \cdot a_{3}^{1}}} & {{h_{1,1}^{2} \cdot a_{4}^{2}} + {h_{2,1}^{2} \cdot a_{3}^{2}}} & 0 & 0 \\{{h_{1,2}^{1} \cdot a_{4}^{1}} + {h_{2,2}^{1} \cdot a_{3}^{1}}} & {{h_{1,2}^{2} \cdot a_{4}^{2}} + {h_{2,2}^{2} \cdot a_{3}^{2}}} & 0 & 0 \\{h_{2,1}^{1} \cdot a_{4}^{1}} & {h_{2,1}^{2} \cdot a_{4}^{2}} & {h_{1,1}^{1} \cdot a_{1}^{1}} & {h_{1,1}^{2} \cdot a_{1}^{2}} \\{h_{2,2}^{1} \cdot a_{4}^{1}} & {h_{2,2}^{2} \cdot a_{4}^{2}} & {h_{1,2}^{1} \cdot a_{1}^{1}} & {h_{1,2}^{2} \cdot a_{1}^{2}} \\0 & 0 & {{h_{1,1}^{1} \cdot a_{2}^{1}} + {h_{2,1}^{1} \cdot a_{1}^{1}}} & {{h_{1,1}^{2} \cdot a_{2}^{2}} + {h_{2,1}^{2} \cdot a_{1}^{2}}} \\0 & 0 & {{h_{1,2}^{1} \cdot a_{2}^{1}} + {h_{2,2}^{1} \cdot a_{1}^{1}}} & {{h_{1,2}^{2} \cdot a_{2}^{2}} + {h_{2,2}^{2} \cdot a_{1}^{2}}} \\0 & 0 & {{h_{1,1}^{1} \cdot a_{3}^{1}} + {h_{2,1}^{1} \cdot a_{2}^{1}}} & {{h_{1,1}^{2} \cdot a_{3}^{2}} + {h_{2,1}^{2} \cdot a_{2}^{2}}} \\0 & 0 & {{h_{1,2}^{1} \cdot a_{3}^{1}} + {h_{2,2}^{1} \cdot a_{2}^{1}}} & {{h_{1,2}^{2} \cdot a_{3}^{2}} + {h_{2,2}^{2} \cdot a_{2}^{2}}} \\0 & 0 & {{h_{1,1}^{1} \cdot a_{4}^{1}} + {h_{2,1}^{1} \cdot a_{3}^{1}}} & {{h_{1,1}^{2} \cdot a_{4}^{2}} + {h_{2,1}^{2} \cdot a_{3}^{2}}} \\0 & 0 & {{h_{1,2}^{1} \cdot a_{4}^{1}} + {h_{2,2}^{1} \cdot a_{3}^{1}}} & {{h_{1,2}^{2} \cdot a_{4}^{2}} + {h_{2,2}^{2} \cdot a_{3}^{2}}} \\0 & 0 & {h_{2,1}^{1} \cdot a_{4}^{1}} & {h_{2,1}^{2} \cdot a_{4}^{2}} \\0 & 0 & {h_{2,2}^{1} \cdot a_{4}^{1}} & {h_{2,2}^{2} \cdot a_{4}^{2}}\end{bmatrix}\begin{bmatrix}d_{1}^{1} \\d_{1}^{2} \\d_{2}^{1} \\d_{2}^{2}\end{bmatrix}} + n_{18 \times 1}}}$

In general, matrix T contains K·N columns, with the first K columnscorresponding to K data symbols sent with K OVSF codes in the firstsymbol period, the next K columns corresponding to K data symbols sentwith the K OVSF codes in the second symbol period, and so on, and thelast K columns corresponding to K data symbols sent with the K OVSFcodes in the last symbol period. Each column of matrix T containsR(Q+L−1) non-zero elements, or Q+L−1 non-zero elements for each of the Rreceive antennas. The Q+L−1 non-zero elements for each receive antennamay be obtained by convolving the Q scrambling and spreading chips forone OVSF code with the L channel taps of the channel impulse responseestimate for that receive antenna and that OVSF code. Every R·Q rows,starting from the top of matrix T, correspond to one symbol period. Thenon-zero elements of the K·N columns of matrix T are arranged such thatthe non-zero elements of the first K columns for the first symbol periodstart at row 1, the non-zero elements of the next K columns for thesecond symbol period start at row R·Q+1, and so on, and the non-zeroelements of the last K columns for the last symbol period start at row(N−1)·R·Q+1.

UE 120 may perform joint detection to obtain an estimate of the datavector d sent by Node B 110. In one design, the data vector d may beestimated based on a matched filter detector. For this design, adetection matrix may be derived as follows:

M_(mf)=T^(H),   Eq (25)

where M_(mf) is a matched filter detection matrix.

In another design, the data vector d may be estimated based on a leastsquares detector, which is also commonly referred to as a zero forcingdetector. For this design, a detection matrix may be derived as follows:

M _(ls) =[T ^(H) T] ⁻¹ T ^(H),   Eq (26)

where M_(ls) is a least squares detection matrix.

In yet another design, the data vector d may be estimated based on aminimum mean square error (MMSE) detector. For this design, a detectionmatrix may be derived as follows:

M _(mmse) =[T ^(H) R _(n) ⁻¹ T+R ₁ ⁻¹]⁻¹ T ^(H) R _(n) ⁻¹,   Eq (27)

where M_(mmse) is an MMSE detection matrix, and

-   R_(d)=E{d d^(H)} is a covariance matrix of the data vector d.

The interference and noise may be assumed to be AWGN with zero mean, avariance of σ², and a covariance matrix of R_(n)=σ²·I. The data symbolsmay be assumed to be uncorrelated with a covariance matrix of R_(d)=I.In this case, a detection matrix M_(a) may be expressed as:

M _(a) =[T ^(H) T+σ ² I] ⁻¹ T ^(H).   Eq (28)

The detection matrix M_(a) approaches the least squares detection matrixM_(ls) if σ²→0 and approaches the matched filter detection matrix M_(mf)if σ²→∞.

The data vector d may be estimated as follows:

{circumflex over (d)}=M y,   Eq (29)

where M is a detection matrix, which may be equal to M_(mf), M_(ls),M_(mmse) or M_(a), and

-   {circumflex over (d)} is a vector of data symbol estimates for all    OVSF codes and symbol periods.

The joint detection may also be performed based on some other detectiontechniques. Vector {circumflex over (d)} is an estimate of vector d ofdata symbols sent in the data fields.

FIG. 5 shows a block diagram of a design of joint detector 360 at UE 120in FIG. 3. Detector 360 performs channel estimation and joint detectionfor a downlink transmission from Node B 110 to UE 120. For simplicity,FIG. 5 shows processing for a case in which UE 120 is equipped with asingle receive antenna.

Within joint detector 360, a channel estimator 510 may obtain receivedsamples for the common midamble and may drive a channel impulse responseestimate ĥ, e.g., as shown in equation (15). A T2P estimator 512 mayobtain the received samples for the left and right data fields anddetermine the energy-per-symbol for each OVSF code, e.g., as shown inequation (17). T2P estimator 512 may also obtain the received samplesfor the common midamble and determine the energy of the common midamble,e.g., as shown in equation (18). T2P estimator 512 may then compute theT2P for each OVSF code, e.g., as shown in equation (19).

A unit 514 may compute a channel impulse response estimate ĥ^(k) foreach OVSF code based on the channel impulse response estimate ĥ and theT2P for that OVSF code, e.g., as shown in equation (16). A unit 516 maycompute an overall channel matrix T based on the channel impulseresponse estimates for all OVSF codes. A unit 518 may compute adetection matrix M based on the overall channel matrix T, e.g., as shownin equation (25), (26), (27) or (28). A data detector 520 a may obtainreceived samples for the left data field and the detection matrix M,perform joint detection on these received samples with the detectionmatrix M, and provide data symbol estimates for all OVSF codes ofinterest for the left data field, e.g., as shown in equation (29).Similarly, a data detector 520 b may obtain received samples for theright data field and the detection matrix M, perform joint detection onthese received samples with the detection matrix M, and provide datasymbol estimates for all OVSF codes of interest for the right datafield.

The matrices and vectors for joint detection may be relatively large.For example, the following parameter values may be used for the 3.84Mcps Option:

N=61, Q=16, R=2, K=16, and L=57.   Eq (30)

-   R·(N·Q+L−1)=2(61·16+57−1)=2064 rows for matrix T.-   K·N=16·61=484 columns for matrix T.

Computation for joint detection may be reduced in various manners. Inone design, the detection matrix M may be defined for data symbols foronly the OVSF codes of interest and may then have fewer rows.

In another design, the energy-per-symbol E_(r) ^(k) for each OVSF codeof each receive antenna may be compared against a threshold. Each OVSFcode with E_(r) ^(k) below the threshold may be removed fromconsideration. Matrix T may then be defined for only OVSF codes withE_(r) ^(k) above the threshold.

In yet another design, the energy-per-symbol E_(r) ^(k) for each OVSFcode that is not assigned to UE 120 may be compared against a set of Gthresholds for G+1 groups. Each non-assigned OVSF code may be placed inone group based on the result of the comparison between E_(r) ^(k) andthe G thresholds. All OVSF codes within each group may have similarenergy-per-symbol values and may be treated as one OVSF code.

Joint detection by UE 120 for downlink transmission from one cell hasbeen described above. Joint detection may also be extended to multiplecells. In this case, UE 120 may estimate the channel impulse responsesfor each cell of interest. UE 120 may also determine theenergy-per-symbol E_(r) ^(k) for each OVSF code of each receive antennafor each cell of interest. UE may perform thresholding to remove OVSFcodes with low energy and may generate a detection matrix M for all OVSFcodes of sufficient energy for all cells of interest. Joint detectionmay thus be performed across all OVSF codes in all cells of interest.Thresholding may be performed to reduce computational complexity.

FIG. 6 shows a design of a process 600 for receiving data on thedownlink in a wireless communication system. Process 600 may beperformed by a UE (as described below) or by some other entity. The UEmay obtain samples for a burst transmitted by a Node B on the downlink,with the burst comprising at least one data field and a common midamble(block 612). The burst may be transmitted to multiple UEs, and the datafield(s) may comprise data symbols sent with multiple orthogonal codes(e.g., multiple OVSF codes) to the multiple UEs. The UE may be assignedat least one of the multiple orthogonal codes. The UE may derivemultiple channel estimates for the multiple orthogonal codes based onsamples for the common midamble and samples for the at least one datafield (block 614). The UE may then perform joint detection, for themultiple orthogonal codes, on the samples for the at least one datafield based on the multiple channel estimates (block 616).

FIG. 7 shows a design of a process for performing channel estimation inblock 614 in FIG. 6. The multiple channel estimates for the multipleorthogonal codes may comprise multiple channel impulse responseestimates. The UE may derive a first channel impulse response estimatebased on the samples for the common midamble, e.g., as shown in equation(15) (block 712). The UE may estimate a T2P for each of the multipleorthogonal codes based on the samples for the at least one data fieldand the samples for the common midamble (block 714). The UE may thenderive a channel impulse response estimate for each orthogonal codebased on the first channel impulse response estimate and the T2P forthat orthogonal code, e.g., as shown in equation (16) (716).

In one design of block 712, the UE may determine a channel estimationmatrix based on a midamble code used for the common midamble, e.g., asshown in equation (9), (11) or (12). The UE may then apply the channelestimation matrix to the samples for the common midamble to obtain thefirst channel impulse response estimate, e.g., as shown in equation(15).

In one design of block 714, the UE may perform FHTs on the samples forthe at least one data field to obtain despread symbols for a pluralityof orthogonal codes, e.g., all possible orthogonal codes. The UE mayperform thresholding and identify the multiple orthogonal codes as asubset of the plurality of orthogonal codes having energy-per-symbolexceeding a threshold. The UE may determine the energy-per-symbol foreach orthogonal code based on despread symbols for that orthogonal code.The UE may also determine the energy of the common midamble based on thesamples for the common midamble, e.g., as shown in equation (18). The UEmay then determine the T2P for each orthogonal code based on theenergy-per-symbol for that orthogonal code and the energy of the commonmidamble, e.g., as shown in equation (19).

FIG. 8 shows a design of a process for performing joint detection inblock 616 in FIG. 6. The UE may determine an overall channel matrixbased on the multiple channel estimates for the multiple orthogonalcodes (block 812). The UE may determine each column of the overallchannel matrix based on convolution of one of multiple channel impulseresponse estimates and a scrambling and spreading chip sequence for oneof the multiple orthogonal codes. The UE may determine a detectionmatrix based on the overall channel matrix and in accordance with amatched filter detector, a least squares detector, an MMSE detector, orsome other detector (block 814). The UE may then apply the detectionmatrix to the samples for each data field to obtain data symbolestimates for at least one of the multiple orthogonal codes for thatdata field (block 816).

In another design, joint detection may be performed for multipleorthogonal codes and multiple receive antennas. The UE may obtainsamples for a burst from each of the multiple receive antennas. The UEmay derive multiple channel estimates for the multiple orthogonal codesfor each receive antenna based on samples from that receive antenna forthe common midamble. The UE may then perform joint detection, for themultiple orthogonal codes and the multiple receive antennas, on samplesfrom the multiple receive antennas for the at least one data field basedon channel estimates for the multiple orthogonal codes for the multiplereceive antennas.

In yet another design, joint detection may be performed for multipleorthogonal codes and multiple cells. The UE may obtain samples formultiple bursts sent by the multiple cells on the downlink, with eachburst comprising at least one data field and a common midamble. The UEmay derive multiple channel estimates for multiple orthogonal codes foreach cell based on samples for the common midamble and a midamble codefor that cell. The UE may then perform joint detection, for the multipleorthogonal codes and the multiple cells, on samples for the at least onedata field based on multiple channel estimates for the multipleorthogonal codes for the multiple cells.

For clarity, FIGS. 6 to 8 describe joint detection for data transmissionon the downlink. Joint detection for data transmission on the uplink maybe performed in similar manner.

FIG. 9 shows a design of an apparatus 900 for receiving data on thedownlink in a wireless communication system. Apparatus 900 includes amodule 912 to obtain samples for a burst comprising at least one datafield and a common midamble, a module 914 to derive multiple channelestimates for multiple orthogonal codes based on samples for the commonmidamble and samples for the at least one data field, and a module 916to perform joint detection, for the multiple orthogonal codes, on thesamples for the at least one data field based on the multiple channelestimates. The modules in FIG. 9 may comprise processors, electronicsdevices, hardware devices, electronics components, logical circuits,memories, software codes, firmware codes, etc., or any combinationthereof

Those of skill in the art would understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Those of skill would further appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the disclosure herein may be implemented as electronichardware, computer software, or combinations of both. To clearlyillustrate this interchangeability of hardware and software, variousillustrative components, blocks, modules, circuits, and steps have beendescribed above generally in terms of their functionality. Whether suchfunctionality is implemented as hardware or software depends upon theparticular application and design constraints imposed on the overallsystem. Skilled artisans may implement the described functionality invarying ways for each particular application, but such implementationdecisions should not be interpreted as causing a departure from thescope of the present disclosure.

The various illustrative logical blocks, modules, and circuits describedin connection with the disclosure herein may be implemented or performedwith a general-purpose processor, a digital signal processor (DSP), anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA) or other programmable logic device, discrete gate ortransistor logic, discrete hardware components, or any combinationthereof designed to perform the functions described herein. Ageneral-purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with thedisclosure herein may be embodied directly in hardware, in a softwaremodule executed by a processor, or in a combination of the two. Asoftware module may reside in RAM memory, flash memory, ROM memory,EPROM memory, EEPROM memory, registers, hard disk, a removable disk, aCD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such that theprocessor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor. The processor and the storage medium may reside in anASIC. The ASIC may reside in a user terminal. In the alternative, theprocessor and the storage medium may reside as discrete components in auser terminal.

In one or more exemplary designs, the functions described may beimplemented in hardware, software, firmware, or any combination thereof.If implemented in software, the functions may be stored on ortransmitted over as one or more instructions or code on acomputer-readable medium. Computer-readable media includes both computerstorage media and communication media including any medium thatfacilitates transfer of a computer program from one place to another. Astorage media may be any available media that can be accessed by ageneral purpose or special purpose computer. By way of example, and notlimitation, such computer-readable media can comprise RAM, ROM, EEPROM,CD-ROM or other optical disk storage, magnetic disk storage or othermagnetic storage devices, or any other medium that can be used to carryor store desired program code means in the form of instructions or datastructures and that can be accessed by a general-purpose orspecial-purpose computer, or a general-purpose or special-purposeprocessor. Also, any connection is properly termed a computer-readablemedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition of medium.Disk and disc, as used herein, includes compact disc (CD), laser disc,optical disc, digital versatile disc (DVD), floppy disk and blu-ray discwhere disks usually reproduce data magnetically, while discs reproducedata optically with lasers. Combinations of the above should also beincluded within the scope of computer-readable media.

The previous description of the disclosure is provided to enable anyperson skilled in the art to make or use the disclosure. Variousmodifications to the disclosure will be readily apparent to thoseskilled in the art, and the generic principles defined herein may beapplied to other variations without departing from the scope of thedisclosure. Thus, the disclosure is not intended to be limited to theexamples and designs described herein but is to be accorded the widestscope consistent with the principles and novel features disclosedherein.

1. A method of receiving data in a wireless communication system,comprising: obtaining samples for a burst comprising at least one datafield and a common midamble; deriving multiple channel estimates formultiple orthogonal codes based on samples for the common midamble andsamples for the at least one data field; and performing joint detection,for the multiple orthogonal codes, on the samples for the at least onedata field based on the multiple channel estimates.
 2. The method ofclaim 1, further comprising: receiving at a user equipment (UE) theburst transmitted by a Node B to multiple UEs, the at least one datafield of the burst comprising data symbols sent with the multipleorthogonal codes to the multiple UEs, and wherein the UE is assigned atleast one of the multiple orthogonal codes.
 3. The method of claim 1,wherein the multiple channel estimates for the multiple orthogonal codescomprise multiple channel impulse response estimates, and wherein thederiving the multiple channel estimates for the multiple orthogonalcodes comprises deriving a first channel impulse response estimate basedon the samples for the common midamble, estimating a traffic-to-pilotratio (T2P) for each of the multiple orthogonal codes based on thesamples for the at least one data field and the samples for the commonmidamble, and deriving a channel impulse response estimate for each ofthe multiple orthogonal codes based on the first channel impulseresponse estimate and the T2P for the orthogonal code.
 4. The method ofclaim 3, wherein the estimating the T2P for each of the multipleorthogonal codes comprises performing fast Hadamard transforms (FHTs) onthe samples for the at least one data field to obtain despread symbolsfor the multiple orthogonal codes, determining energy-per-symbol foreach of the multiple orthogonal codes based on despread symbols for theorthogonal code, determining energy of the common midamble based on thesamples for the common midamble, and determining the T2P for each of themultiple orthogonal codes based on the energy-per-symbol for theorthogonal code and the energy of the common midamble.
 5. The method ofclaim 3, wherein the estimating the T2P for each of the multipleorthogonal codes comprises determining energy-per-symbol for each of aplurality of orthogonal codes based on the samples for the at least onedata field, identifying the multiple orthogonal codes as a subset of theplurality of orthogonal codes having energy-per-symbol exceeding athreshold, determining energy of the common midamble based on thesamples for the common midamble, and determining the T2P for each of themultiple orthogonal codes based on the energy-per-symbol for theorthogonal code and the energy of the common midamble.
 6. The method ofclaim 3, wherein the deriving the first channel impulse responseestimate comprises determining a channel estimation matrix based on amidamble code used for the common midamble, and applying the channelestimation matrix to the samples for the common midamble to obtain thefirst channel impulse response estimate.
 7. The method of claim 6,wherein the determining the channel estimation matrix comprisesdetermining the channel estimation matrix based on the midamble code andin accordance with a maximum likelihood channel estimator.
 8. The methodof claim 1, wherein the performing joint detection comprises determiningan overall channel matrix based on the multiple channel estimates forthe multiple orthogonal codes, determining a detection matrix based onthe overall channel matrix, and applying the detection matrix to thesamples for the at least one data field to obtain data symbol estimatesfor at least one of the multiple orthogonal codes.
 9. The method ofclaim 8, wherein the multiple channel estimates for the multipleorthogonal codes comprise multiple channel impulse response estimates,and wherein the determining the overall channel matrix comprisesdetermining each column of the overall channel matrix based on one ofthe multiple channel impulse response estimates and a scrambling andspreading chip sequence for one of the multiple orthogonal codes. 10.The method of claim 8, wherein the determining the detection matrixcomprises determining the detection matrix based on the overall channelmatrix and in accordance with a matched filter detector, a least squaresdetector, or a minimum mean square error (MMSE) detector.
 11. The methodof claim 1, wherein the at least one data field comprises a left datafield and a right data field, wherein the deriving multiple channelestimates comprises deriving multiple channel impulse response estimatesfor the multiple orthogonal codes based on the samples for the commonmidamble and samples for the left and right data fields, and wherein theperforming joint detection comprises determining a detection matrixbased on the multiple channel impulse response estimates for themultiple orthogonal codes, applying the detection matrix to samples forthe left data field to obtain data symbol estimates for at least oneorthogonal code for the left data field, and applying the detectionmatrix to samples for the right data field to obtain data symbolestimates for the at least one orthogonal code for the right data field.12. The method of claim 1, wherein the obtaining samples for a burstcomprises obtaining samples for the burst from each of multiple receiveantennas, wherein the deriving multiple channel estimates comprisesderiving multiple channel estimates for the multiple orthogonal codesfor each receive antenna based on samples from the receive antenna forthe common midamble, and wherein the performing joint detectioncomprises performing joint detection, for the multiple orthogonal codesand the multiple receive antennas, on samples from the multiple receiveantennas for the at least one data field based on channel estimates forthe multiple orthogonal codes for the multiple receive antennas.
 13. Themethod of claim 1, wherein the obtaining samples for a burst comprisesobtaining samples for multiple bursts sent by multiple cells, each burstcomprising the at least one data field and the common midamble, whereinthe deriving multiple channel estimates comprises deriving multiplechannel estimates for multiple orthogonal codes for each cell based onsamples for the common midamble and a midamble code for the cell, andwherein the performing joint detection comprises performing jointdetection, for the multiple orthogonal codes and the multiple cells, onsamples for the at least one data field based on multiple channelestimates for the multiple orthogonal codes for the multiple cells. 14.An apparatus for wireless communication, comprising: at least oneprocessor configured to obtain samples for a burst comprising at leastone data field and a common midamble, to derive multiple channelestimates for multiple orthogonal codes based on samples for the commonmidamble and samples for the at least one data field, and to performjoint detection, for the multiple orthogonal codes, on the samples forthe at least one data field based on the multiple channel estimates. 15.The apparatus of claim 14, wherein the at least one processor isconfigured to derive a first channel impulse response estimate based onthe samples for the common midamble, to estimate a traffic-to-pilotratio (T2P) for each of the multiple orthogonal codes based on thesamples for the at least one data field and the samples for the commonmidamble, and to derive a channel impulse response estimate for each ofthe multiple orthogonal codes based on the first channel impulseresponse estimate and the T2P for the orthogonal code.
 16. The apparatusof claim 15, wherein the at least one processor is configured to performfast Hadamard transforms (FHTs) on the samples for the at least one datafield to obtain despread symbols for the multiple orthogonal codes, todetermine energy-per-symbol for each of the multiple orthogonal codesbased on despread symbols for the orthogonal code, to determine energyof the common midamble based on the samples for the common midamble, andto determine the T2P for each of the multiple orthogonal codes based onthe energy-per-symbol for the orthogonal code and the energy of thecommon midamble.
 17. The apparatus of claim 15, wherein the at least oneprocessor is configured to determine a channel estimation matrix basedon a midamble code used for the common midamble, and to apply thechannel estimation matrix to the samples for the common midamble toobtain the first channel impulse response estimate.
 18. The apparatus ofclaim 14, wherein the at least one processor is configured to determinean overall channel matrix based on the multiple channel estimates forthe multiple orthogonal codes, to determine a detection matrix based onthe overall channel matrix, and to apply the detection matrix to thesamples for the at least one data field to obtain data symbol estimatesfor at least one of the multiple orthogonal codes.
 19. The apparatus ofclaim 18, wherein the at least one processor is configured to determineeach column of the overall channel matrix based on one of multiplechannel impulse response estimates and a scrambling and spreading chipsequence for one of the multiple orthogonal codes.
 20. The apparatus ofclaim 14, wherein the at least one data field comprises a left datafield and a right data field, and wherein the at least one processor isconfigured to derive multiple channel impulse response estimates for themultiple orthogonal codes based on the samples for the common midambleand samples for the left and right data fields, to determine a detectionmatrix based on the multiple channel impulse response estimates for themultiple orthogonal codes, to apply the detection matrix to samples forthe left data field to obtain data symbol estimates for at least oneorthogonal code for the left data field, and to apply the detectionmatrix to samples for the right data field to obtain data symbolestimates for the at least one orthogonal code for the right data field.21. An apparatus for wireless communication, comprising: means forobtaining samples for a burst comprising at least one data field and acommon midamble; means for deriving multiple channel estimates formultiple orthogonal codes based on samples for the common midamble andsamples for the at least one data field; and means for performing jointdetection, for the multiple orthogonal codes, on the samples for the atleast one data field based on the multiple channel estimates.
 22. Theapparatus of claim 21, wherein the multiple channel estimates for themultiple orthogonal codes comprise multiple channel impulse responseestimates, and wherein the means for deriving the multiple channelestimates for the multiple orthogonal codes comprises means for derivinga first channel impulse response estimate based on the samples for thecommon midamble, means for estimating a traffic-to-pilot ratio (T2P) foreach of the multiple orthogonal codes based on the samples for the atleast one data field and the samples for the common midamble, and meansfor deriving a channel impulse response estimate for each of themultiple orthogonal codes based on the first channel impulse responseestimate and the T2P for the orthogonal code.
 23. The apparatus of claim22, wherein the means for estimating the T2P for each of the multipleorthogonal codes comprises means for performing fast Hadamard transforms(FHTs) on the samples for the at least one data field to obtain despreadsymbols for the multiple orthogonal codes, means for determiningenergy-per-symbol for each of the multiple orthogonal codes based ondespread symbols for the orthogonal code, means for determining energyof the common midamble based on the samples for the common midamble, andmeans for determining the T2P for each of the multiple orthogonal codesbased on the energy-per-symbol for the orthogonal code and the energy ofthe common midamble.
 24. The apparatus of claim 22, wherein the meansfor deriving the first channel impulse response estimate comprises meansfor determining a channel estimation matrix based on a midamble codeused for the common midamble, and means for applying the channelestimation matrix to the samples for the common midamble to obtain thefirst channel impulse response estimate.
 25. The apparatus of claim 21,wherein the means for performing joint detection comprises means fordetermining an overall channel matrix based on the multiple channelestimates for the multiple orthogonal codes, means for determining adetection matrix based on the overall channel matrix, and means forapplying the detection matrix to the samples for the at least one datafield to obtain data symbol estimates for at least one of the multipleorthogonal codes.
 26. The apparatus of claim 25, wherein the multiplechannel estimates for the multiple orthogonal codes comprise multiplechannel impulse response estimates, and wherein the means fordetermining the overall channel matrix comprises means for determiningeach column of the overall channel matrix based on one of the multiplechannel impulse response estimates and a scrambling and spreading chipsequence for one of the multiple orthogonal codes.
 27. The apparatus ofclaim 21, wherein the at least one data field comprises a left datafield and a right data field, wherein the means for deriving multiplechannel estimates comprises means for deriving multiple channel impulseresponse estimates for the multiple orthogonal codes based on thesamples for the common midamble and samples for the left and right datafields, and wherein the means for performing joint detection comprisesmeans for determining a detection matrix based on the multiple channelimpulse response estimates for the multiple orthogonal codes, means forapplying the detection matrix to samples for the left data field toobtain data symbol estimates for at least one orthogonal code for theleft data field, and means for applying the detection matrix to samplesfor the right data field to obtain data symbol estimates for the atleast one orthogonal code for the right data field.
 28. A computerprogram product, comprising: a computer-readable medium comprising: codefor causing at least one computer to obtain samples for a burstcomprising at least one data field and a common midamble; code forcausing the at least one computer to derive multiple channel estimatesfor multiple orthogonal codes based on samples for the common midambleand samples for the at least one data field; and code for causing the atleast one computer to perform joint detection, for the multipleorthogonal codes, on the samples for the at least one data field basedon the multiple channel estimates.
 29. The computer program product ofclaim 28, wherein the computer-readable medium further comprises: codefor causing the at least one computer to derive a first channel impulseresponse estimate based on the samples for the common midamble; code forcausing the at least one computer to estimate a traffic-to-pilot ratio(T2P) for each of the multiple orthogonal codes based on the samples forthe at least one data field and the samples for the common midamble; andcode for causing the at least one computer to derive a channel impulseresponse estimate for each of the multiple orthogonal codes based on thefirst channel impulse response estimate and the T2P for the orthogonalcode.
 30. The computer program product of claim 28, wherein thecomputer-readable medium further comprises: code for causing the atleast one computer to determine an overall channel matrix based on themultiple channel estimates for the multiple orthogonal codes; code forcausing the at least one computer to determine a detection matrix basedon the overall channel matrix; and code for causing the at least onecomputer to apply the detection matrix to the samples for the at leastone data field to obtain data symbol estimates for at least one of themultiple orthogonal codes.